1: | active(zeros) | → mark(cons(0,zeros)) | |
2: | active(tail(cons(X,XS))) | → mark(XS) | |
3: | active(cons(X1,X2)) | → cons(active(X1),X2) | |
4: | active(tail(X)) | → tail(active(X)) | |
5: | cons(mark(X1),X2) | → mark(cons(X1,X2)) | |
6: | tail(mark(X)) | → mark(tail(X)) | |
7: | proper(zeros) | → ok(zeros) | |
8: | proper(cons(X1,X2)) | → cons(proper(X1),proper(X2)) | |
9: | proper(0) | → ok(0) | |
10: | proper(tail(X)) | → tail(proper(X)) | |
11: | cons(ok(X1),ok(X2)) | → ok(cons(X1,X2)) | |
12: | tail(ok(X)) | → ok(tail(X)) | |
13: | top(mark(X)) | → top(proper(X)) | |
14: | top(ok(X)) | → top(active(X)) | |
15: | ACTIVE(zeros) | → CONS(0,zeros) | |
16: | ACTIVE(cons(X1,X2)) | → CONS(active(X1),X2) | |
17: | ACTIVE(cons(X1,X2)) | → ACTIVE(X1) | |
18: | ACTIVE(tail(X)) | → TAIL(active(X)) | |
19: | ACTIVE(tail(X)) | → ACTIVE(X) | |
20: | CONS(mark(X1),X2) | → CONS(X1,X2) | |
21: | TAIL(mark(X)) | → TAIL(X) | |
22: | PROPER(cons(X1,X2)) | → CONS(proper(X1),proper(X2)) | |
23: | PROPER(cons(X1,X2)) | → PROPER(X1) | |
24: | PROPER(cons(X1,X2)) | → PROPER(X2) | |
25: | PROPER(tail(X)) | → TAIL(proper(X)) | |
26: | PROPER(tail(X)) | → PROPER(X) | |
27: | CONS(ok(X1),ok(X2)) | → CONS(X1,X2) | |
28: | TAIL(ok(X)) | → TAIL(X) | |
29: | TOP(mark(X)) | → TOP(proper(X)) | |
30: | TOP(mark(X)) | → PROPER(X) | |
31: | TOP(ok(X)) | → TOP(active(X)) | |
32: | TOP(ok(X)) | → ACTIVE(X) | |